package com.itheima.streamdemo.mystream;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashMap;
import java.util.stream.Stream;

/*
*   Stream流的获取方法
*       单列集合: 集合对象.stream();
*       双列集合: 不能直接获取
*                   集合对象.keySet().stream()
*                   集合对象.entrySet().stream()
*       数组    :
*                   Arrays.stream();
*
* */

public class MyStream2 {
    public static void main(String[] args) {
        //单列集合  直接使用list.stream()方法获取stream方法
        System.out.println("=========================");
        ArrayList<String> list = new ArrayList<>();
        Collections.addAll(list,"Hello","World","Java");
        list.stream().forEach(s-> System.out.println(s));

        //双列集合      先获取hm.entrySet()拿到键值对的单列集合,再通过.stream()生成stream()流
        System.out.println("=========================");
        HashMap<String ,Integer> hm = new HashMap<>();
        hm.put("zhangsan",23);
        hm.put("lisi",24);
        hm.put("wangwu",25);

        hm.entrySet().stream().forEach(s-> System.out.println(s));

        //数组    通过Arrays提供的静态方法.stream(arr)生成stream()流
        System.out.println("=========================");
        int[] arr = {1,2,3,4,5};
        Arrays.stream(arr).forEach(s-> System.out.print(s + " "));

        //同种类型的多个数据     通过stream的静态方法 .of()生成stream流
        System.out.println("\n=========================");
        Stream.of(1,2,3,4,5,6,7,8).forEach(s-> System.out.print(s + " "));

    }



}
